package com.chengjue.jms.activemq.queue;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.jms.core.MessageCreator;
import org.springframework.stereotype.Component;

import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.Session;

/**
 * ActiveMQ的消息队列模式
 * Description:
 * 队列消息的生产者，发哦是哪个消息到队列
 *
 */
@Component
public class QueueSender1 {

    /**
     * 通过Qualifier来注入对应的Bean
     */
    @Autowired
    @Qualifier("jmsQueueTemplate")
    private JmsTemplate jmsTemplate;

    /**
     * Description:
     * 发送消息到指定的队列(目标)
     *
     * @param queueName 队列名称
     * @param message   消息内容
     * @author hetiewei
     * @date 2016年4月25日 上午10:24:57
     */
    public void send(String queueName, final String message) {

        jmsTemplate.send(queueName, new MessageCreator() {
            public Message createMessage(Session session) throws JMSException {
                return session.createTextMessage(message);
            }
        });
    }


}
